#include <iostream>
using namespace std;

class A {
  private:
    int a;

  public:
    A() { cout << "无参构造函数" << endl; }
    A(int a) { cout << "含参构造函数a=" << a << endl; }
    A(const A &copy) : a(copy.a) { cout << "复制构造函数" << endl; }
    ~A() { cout << "析构函数" << endl; }
};

int main() {
    A obj1, obj2(1), obj3(obj2);

    return 0;
}
